.coupon-popup {
  margin-top: 30rpx;
  padding: 28rpx;

  .disable-coupons {
    filter: grayscale(100%);
    margin-top: 24 rpx;
  }
}
::v-deep .select-time-popup {
  .u-drawer-content {
    border-radius: 30rpx !important;
  }

  .u-select__body__picker-view__item {
    font-size: 34rpx;
  }

  .u-select__body {
    height: 25vh !important;
  }
}

.order-container {
  width: 100vw;
  height: fit-content;
  padding-bottom: 220rpx;
  background-color: #f6f6f6;

  .address-container {
    width: 90%;
    height: fit-content;
    margin-left: 5%;
    display: flex;
    flex-direction: column;

    .tag-container {
      width: 100%;
      height: 80rpx;
      position: relative;
      top: 40rpx;
      display: flex;
      flex-direction: row;
      background-color: #fff;
      border-radius: 30rpx 30rpx 0;

      .tag--default {
        text-align: center;
        color: #333;
        transition-property: color, background-color, font-size, font-weight;
        transition-duration: 0ms;
      }

      .tag--unselect {
        width: 100%;
        height: 80rpx;
        font-size: 28rpx;
        line-height: 80rpx;
        background-color: #ededed;
      }

      .tag--selected {
        width: 100%;
        height: 100rpx;
        position: relative;
        top: -20rpx;
        font-size: 30rpx;
        line-height: 100rpx;
        font-weight: bold;
        color: #f4756b;
        background-color: #fff;
      }

      .tag-left--selected {
        border-radius: 30rpx 30rpx 0 0;
      }

      .tag-left--unselect {
        border-radius: 30rpx 0 30rpx 0;
      }

      .tag-right--selected {
        border-radius: 30rpx 30rpx 0 0;
      }

      .tag-right--unselect {
        border-radius: 0 30rpx 0 30rpx;
      }
    }

    .content-container {
      width: 100%;
      height: fit-content;
      margin-top: 40rpx;
      background-color: #fff;
      border-radius: 0 0 30rpx 30rpx;

      .content--default {
        padding: 40rpx;
      }

      .content-left {
        padding-bottom: 28rpx;

        .store-info-container {
          width: 100%;
          height: fit-content;
          display: flex;
          flex-direction: row;
          border-bottom: 2rpx solid #f3f3f3;

          .store-details {
            width: calc(100% - 42rpx);
            height: fit-content;

            .store-name {
              font-size: 36rpx;
              color: #333;
            }

            .store-address {
              margin-top: 10rpx;
              margin-bottom: 36rpx;
              font-size: 26rpx;
              color: #808080;
              text-overflow: -o-ellipsis-lastline;
              overflow: hidden;
              text-overflow: ellipsis;
              display: -webkit-box;
              line-clamp: 2;
              -webkit-line-clamp: 2;
              -webkit-box-orient: vertical;

              .fas {
                margin-right: 12rpx;
              }
            }
          }

          .store-btn {
            width: 36rpx;
            height: 100%;
            position: relative;
            left: 6rpx;
            font-size: 38rpx;
            line-height: 130rpx;
            text-align: right;
            align-items: center;
            color: #aaa;
          }
        }

        .contact-info-container {
          width: 100%;
          height: 120rpx;
          border-bottom: 2rpx solid #f3f3f3;
          display: flex;
          flex-direction: row;
          padding: 26rpx 0;
          text-overflow: ellipsis;
          overflow: hidden;

          .contact-name {
            width: 50%;
            height: 100%;
            border-right: 2rpx solid #f3f3f3;
            padding-right: 18rpx;
            overflow: hidden;

            .contact-value {
              left: 46rpx !important;
              top: -56rpx !important;

              input {
                width: calc(100% - 60rpx);
              }
            }
          }

          .contact-phone {
            width: 50%;
            height: 100%;
            padding-left: 18rpx;
            overflow: hidden;

            .contact-value {
              left: 40rpx !important;
              top: -56rpx !important;

              input {
                width: calc(100% - 60rpx);
              }
            }
          }

          .contact-title--default {
            font-size: 32rpx;
            color: #808080;
            display: inline;
            line-height: 66rpx;

            .fas {
              position: relative;
            }

            .fa-user {
              top: 2rpx;
              font-size: 36rpx;
            }

            .fa-mobile-screen-button {
              top: 2rpx;
              font-size: 38rpx;
            }
          }

          .contact-placeholder--default {
            display: inline;
            position: relative;
            top: -2rpx;
            left: 20rpx;
            font-size: 28rpx;
            color: #808080;
            line-height: 66rpx;

            .fa-angle-right {
              position: relative;
              top: 2rpx;
              margin-left: 10rpx;
              font-size: 30rpx;
            }
          }

          .contact-value {
            display: inline;
            position: relative;
            top: -2rpx;
            left: 20rpx;
            font-size: 30rpx;
            color: #111;
            line-height: 66rpx;
          }
        }

        .time-container {
          width: 100%;
          height: fit-content;
          display: flex;
          flex-direction: row;
          padding: 26rpx 0 0;
          text-overflow: ellipsis;
          overflow: hidden;

          .contact-title--default {
            font-size: 32rpx;
            color: #808080;
            display: inline;
            line-height: 66rpx;

            .fa {
              font-size: 38rpx;
            }
          }

          .contact-placeholder--default {
            display: inline;
            position: relative;
            top: -2rpx;
            left: 20rpx;
            font-size: 28rpx;
            color: #808080;
            line-height: 66rpx;

            .fa-angle-right {
              position: relative;
              top: 2rpx;
              margin-left: 10rpx;
              font-size: 30rpx;
            }
          }

          .contact-value {
            display: inline;
            position: relative;
            top: -2rpx;
            left: 40rpx;
            font-size: 30rpx;
            line-height: 66rpx;

            .fa-angle-right {
              margin-left: 20rpx;
              font-size: 36rpx;
              color: #808080;
            }
          }
        }
      }

      .content-right {
        .my-address-container {
          width: 100%;
          height: fit-content;
          display: flex;
          flex-direction: row;

          .my-address {
            width: calc(100% - 42rpx);
            height: fit-content;

            .address-tips {
              line-height: 80rpx;
              font-size: 36rpx;
              color: #333;
            }

            .address-detail {
              font-size: 36rpx;
              color: #333;
            }

            .contact-info {
              margin-top: 10rpx;
              font-size: 26rpx;
              color: #808080;
              text-overflow: -o-ellipsis-lastline;
              overflow: hidden;
              text-overflow: ellipsis;
              display: -webkit-box;
              line-clamp: 2;
              -webkit-line-clamp: 2;
              -webkit-box-orient: vertical;

              .fa-map-marker {
                margin-right: 12rpx;
              }
            }
          }

          .my-address-btn {
            width: 36rpx;
            height: 100%;
            position: relative;
            left: 6rpx;
            margin: auto;
            font-size: 36rpx;
            text-align: right;
            align-items: center;
            color: #aaa;
          }
        }
      }
    }
  }

  .order-details-container {
    width: 90%;
    height: fit-content;
    margin: 20rpx 0 0 5%;
    padding: 40rpx;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border-radius: 30rpx;

    .store-title-container {
      display: flex;
      flex-direction: row;
      width: 100%;
      height: fit-content;

      .store-title-avatar {
        width: 42rpx;
        height: 42rpx;
        border-radius: 50rpx;
        overflow: hidden;

        .avatar {
          width: 100%;
          height: 100%;
          background: #f1f1f1;
        }
      }

      .store-title-name {
        margin-left: 20rpx;
        max-width: calc(100% - 62rpx);
        height: 100%;
        line-height: 42rpx;
        font-size: 28rpx;
        color: #555;
      }
    }

    .order-content-container {
      width: 100%;
      height: fit-content;
      display: flex;
      flex-direction: column;
      margin-top: 50rpx;

      .commodity-container {
        width: 100%;
        height: fit-content;
        margin-bottom: 50rpx;
        display: flex;
        flex-direction: row;

        .commodity-image-container {
          width: 15vw;
          height: 15vw;
          flex-shrink: 0;
          border-radius: 16rpx;
          overflow: hidden;

          .commodity-image {
            width: 100%;
            height: 100%;
            background-color: #f1f1f1;
          }
        }

        .commodity-info-container {
          //width: calc(100% -  30vw);
          height: fit-content;
          padding: 0 20rpx;
          white-space: nowrap;
          overflow: hidden;

          .commodity-name {
            font-size: 28rpx;
            color: #555;
            text-overflow: ellipsis;
            overflow: hidden;
          }

          .commodity-description {
            width: fit-content;
            height: fit-content;
            margin-top: 18rpx;
            font-size: 24rpx;
            color: #aaa;
            white-space: initial;
            overflow: initial;
          }
        }

        .commodity-price-container {
          width: fit-content;
          height: fit-content;
          flex-shrink: 0;
          margin-left: auto;
          padding-left: 30rpx;
          display: flex;
          flex-direction: column;
          text-align: right;

          .commodity-price {
            display: flex;
            flex-direction: row;
            line-height: 36rpx;

            .origin-price {
              margin-right: 10rpx;
              font-size: 26rpx;
              text-decoration: line-through;
              color: #aaa;
            }

            .discount-price {
              font-size: 30rpx;
              color: #333;
            }
          }

          .commodity-amount {
            margin-top: 20rpx;
            font-size: 24rpx;
            color: #aaa;
          }
        }
      }

      .order-price-container {
        width: 100%;
        height: fit-content;
        display: flex;
        flex-direction: column;
        font-size: 28rpx;
        color: #555;

        .delivery-price {
          display: flex;
          flex-direction: row;
        }

        .packaging-price {
          display: flex;
          flex-direction: row;
          margin-top: 40rpx;
        }

        .price {
          margin-left: auto;
          font-size: 30rpx;
          color: #333;
        }

        .coupon {
          display: flex;
          flex-direction: row;
          margin-top: 40rpx;

          .coupon-tag {
            width: 30rpx;
            height: 30rpx;
            line-height: 30rpx;
            font-size: 20rpx;
            margin-top: 6rpx;
            margin-left: 10rpx;
            text-align: center;
            background-color: #f4756b;
            color: #fff;
            border-radius: 10rpx;
          }

          .select-coupon__default {
            margin-left: auto;
            color: #bbb;
            font-size: 28rpx;

            .fas {
              margin-left: 20rpx;
              font-size: 30rpx;
              color: #aaa;
            }
          }
        }
      }

      .total-price-container {
        width: 100%;
        height: fit-content;
        margin-top: 60rpx;
        font-size: 26rpx;
        text-align: right;
        color: #555;

        .total-price-description {
          display: flex;
          flex-direction: row;
          width: fit-content;
          margin-left: auto;
          line-height: 40rpx;
        }

        .total-price {
          width: fit-content;
          margin-left: 10rpx;
          font-size: 36rpx;
          color: #333;
        }
      }
    }
  }

  .order-options-container {
    width: 90%;
    height: 200rpx;
    margin: 20rpx 0 0 5%;
    margin-bottom: 5%;
    margin-bottom: calc(5% + constant(safe-area-inset-bottom));
    margin-bottom: calc(5% + env(safe-area-inset-bottom));
    padding: 40rpx;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border-radius: 30rpx;
    font-size: 28rpx;
    color: #555;

    .remark {
      display: flex;
      flex-direction: row;

      view:first-child {
        flex-shrink: 0;
      }

      .select-remark__default {
        margin-left: auto;
        display: flex;
        flex-direction: row;
        color: #bbb;
        font-size: 28rpx;

        .content {
          max-width: 50vw;
          text-overflow: ellipsis;
          overflow: hidden;
          white-space: nowrap;
        }

        .fas {
          flex-shrink: 0;
          margin-left: 20rpx;
          font-size: 30rpx;
          color: #aaa;
        }
      }
    }

    .payment-method {
      display: flex;
      flex-direction: row;
      margin-top: 40rpx;

      .select-payment-method__default {
        margin-left: auto;
        color: #bbb;
        font-size: 28rpx;
      }
    }
  }

  .fixed-bar-container {
    width: 100vw;
    height: 110rpx;
    height: calc(110rpx + constant(safe-area-inset-bottom));
    height: calc(110rpx + env(safe-area-inset-bottom));
    position: fixed;
    bottom: 0;
    padding: 18rpx 40rpx;
    display: flex;
    flex-direction: row;
    background-color: #fff;
    box-shadow: 0 -8rpx 16rpx 0 rgba(175, 175, 175, 0.1), 0 0 0 0 #fff,
    0 10rpx 10rpx 0 transparent, 0 0 0 0 #fff;

    .discount-price {
      font-size: 26rpx;
      line-height: 120rpx;
      position: fixed;
      right: 250rpx;
      color: #999;
    }

    .total-price {
      position: fixed;
      right: 250rpx;
      font-size: 36rpx;
      color: #f4756b;
      font-weight: bold;
      line-height: 46rpx;
    }

    .pay-btn {
      width: 180rpx;
      height: 78rpx;
      margin-left: auto;
      font-size: 32rpx;
      color: #fff;
      text-align: center;
      line-height: 78rpx;
      background-color: #f4756b;
      border-radius: 50rpx;
      transition-duration: 300ms;
      transition-property: background-color;
    }

    .pay-btn__disabled {
      background-color: rgba(244, 117, 107, 0.5);
      pointer-events: none;
    }
  }
}